package com.workcell.workdata.xthings.entity.mqtt;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.workcell.workdata.xthings.constant.ExtOutputAttributes;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 冷冻机表
 * @TableName t_freezer_data
 */
@TableName(value ="t_freezer_data")
@Data
@Accessors(chain = true)
public class FreezerData implements Serializable {
    /**
     * 主键
     */
    private String id;

    /**
     * 主设备编码
     */
    private String masterDeviceNo;

    /**
     * 从设备编码
     */
    private String slaveDeviceNo;

    /**
     * 机器码
     */
    private String addressId;

    /**
     * 厂商编码
     */
    private String manufacturerCode;

	/**
	 * 冷冻出水温度(单位为℃)
	 */
	@ExtOutputAttributes(key = "冷冻出水温度(单位为℃)")
	private String chilledEffluentTemperature;
	/**
	 * 冷冻回水温度(单位为℃)
	 */
	@ExtOutputAttributes(key = "冷冻回水温度(单位为℃)")
	private String chilledReturnTemperature;
	/**
	 * 冷却出水温度(单位为℃)
	 */
	@ExtOutputAttributes(key = "冷却出水温度(单位为℃)")
	private String coolingEffluentTemperature;
	/**
	 * 排气温度(单位为℃)
	 */
	@ExtOutputAttributes(key = "排气温度(单位为℃)")
	private String exhaustTemperature;
	/**
	 * 吸气温度(单位为℃)
	 */
	@ExtOutputAttributes(key = "吸气温度(单位为℃)")
	private String aspirationTemperature;
	/**
	 * 排气压力(单位为Bar)
	 */
	@ExtOutputAttributes(key = "排气压力(单位为Bar)")
	private String exhaustPressure;
	/**
	 * 吸气压力(单位为Bar)
	 */
	@ExtOutputAttributes(key = "吸气压力(单位为Bar)")
	private String aspirationPressure;
	/**
	 * 报警信息
	 * 0：压一油位开关保护
	 * 1：压一高压保护
	 * 2：压一低压保护
	 * 3：压一智能模块保护
	 * 4：压一油压差保护
	 * 5：冷却水流量保护
	 * 6：冷冻水流量保护
	 * 7：冷冻水出水传感器保护
	 * 8：压一排压传感器保护
	 * 9：压一吸压传感器保护
	 * 10：压一排温传感器保护
	 * 11：压一吸温传感器保护
	 * 12：冷却水温度传感器一保护
	 * 13：压一排温过低保护
	 * 14：冷却水温度低保护
	 * 15：冷冻水回水传感器保护
	 */
	@ExtOutputAttributes(key = "报警信息")
	private String alarm;
	/**
	 * 机组状态（1表示机组状态进行）
	 */
	@ExtOutputAttributes(key = "机组状态")
	private String unitStatus;
    /**
     * 数据入库时间
     */
    private LocalDateTime createTime;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
